package com.mrjy.weixin.bo;
import java.io.IOException;
import java.util.List;
import java.util.Map;

import com.mrjy.common.entity.WeixinMenu;
import com.mrjy.common.entity.WeixinMenuGroup;

public interface IWeixinMenuBo {
	/**
	 * 显示签到信息
	 * @param signUpInfo
	 * @return
	 */
	public Map<String,Object> weixinMenuGroupList(WeixinMenuGroup weixinMenuGroup);

	/**
	 * 根据ID查询
	 */
	public WeixinMenuGroup queryById(int id);

	/**
	 * 查询树
	 * @param id
	 * @return
	 */
	public List<Map<String,Object>> queryMenuTree(int id);

	/**
	 * 删除菜单
	 */
	public Integer deleteMenuGroup(int[] ids);

	/**
	 * 新增菜单组
	 * @param weixinMenuGroup
	 * @return
	 */
	public int addMenuGroup(WeixinMenuGroup weixinMenuGroup);

	/**
	 * 新增菜单
	 * @param list
	 * @param weixinMenuGroup 
	 * @return
	 */
	public int addMenuByA(List<WeixinMenu> list, WeixinMenuGroup weixinMenuGroup);

	/**
	 * 新增菜单
	 * @param weixinMenu
	 * @return
	 */
	public int addMenuByU(WeixinMenu weixinMenu);

	/**
	 * 更新菜单
	 * @param weixinMenu
	 * @return
	 */
	public int updateMenuByU(WeixinMenu weixinMenu);

	/**
	 * 
	 * @param weixinMenuGroup
	 * @return
	 */
	public int updateGroupByUId(WeixinMenuGroup weixinMenuGroup);
	
	/**
	 * 整理为树用的数据
	 * @param list
	 * @return
	 */
	public List<Map<String, Object>> makeTreeData(List<WeixinMenu> list);

	/**
	 * 删除DB树
	 * @param id
	 * @return
	 */
	public int deleteMenu(int id);

	/**
	 * 删除list的里面
	 * @param list
	 * @param strfalg
	 * @return
	 */
	public List<WeixinMenu> deleteMenuByS(List<WeixinMenu> list, String strfalg);
	
	/**
	 * 删除子的
	 * @param list
	 * @param iii
	 */
	public void deleteChildrenMenuBys(List<WeixinMenu> list, int iii);
}
